import java.util.Scanner;

public class RomanNumber {
    public static void main(String[] args) {
//        键盘录入一个字符串，
//        要求1：长度为小于等于9
//        要求2：只能是数字
//                将内容变成罗马数字
//        下面是阿拉伯数字跟罗马数字的对比关系:
//        | -1、|l -2、|ll-3、IV-4、V-5、VI-6、VIl-7、VI-:
//        注意点：
//        罗马数字里面是没有0的
//        如果键盘录入的数字包含0，可以变成””
//       （长度为0的字符串)
        // 定义一个字符串数组romanNumber，用于存储罗马数字
String[] romanNumber = {"","l", "ll", "lll","IV", "V", "Vl", "Vll","Vlll","IX"};
// 创建一个Scanner对象，用于接收用户输入
Scanner sc = new Scanner(System.in);
// 输出提示信息
System.out.println("请输入一个字符串：");
// 循环接收用户输入
while(true) {
    // 接收用户输入的字符串
    String str = sc.next();
    // 调用cheacStr()方法检查输入的字符串是否有效
    boolean flag = cheacStr(str) ;
    // 如果输入的字符串有效，则输出转换后的罗马数字
    if (flag) {
        for (int i = 0; i < str.length(); i++) {
            // 获取字符串中的每一个字符
            char c = str.charAt(i);
            // 将字符转换为整数
            int in = (int)c - 48;
            // 获取罗马数字
            String ch = romanNumber[in];
            // 输出罗马数字
            System.out.print(ch + " ");
        }
        System.out.println();
        break;

    // 如果输入的字符串无效，则提示用户重新输入
    }else{
        System.out.println("输入错误！请重新输入一个字符串：");
    }
}

}


    public  static boolean cheacStr(String str) {
        // 检查字符串长度是否大于9
        if (str.length() >9){
            return false;
        }
        // 遍历字符串中的每一个字符
        for (int i = 0; i < str.length(); i++) {
            char temp = str.charAt(i);
            // 检查字符是否在0-9之间
            if (temp  > '9' || temp < '0'){
                return  false;
            }
        }
        return true;
    }

}
